﻿Namespace Core
    Public Class ImageObject

        Private _OriginalUri As Uri
        Private _iInformation As New ImageInformation
        Private _ToString As String

        Public Property OriginalUri() As Uri
            Get
                Return _OriginalUri
            End Get
            Set(ByVal value As Uri)
                _OriginalUri = value
            End Set
        End Property

        Public Property ImageInformation() As ImageInformation
            Get
                Return _iInformation
            End Get
            Set(ByVal value As ImageInformation)
                _iInformation = value
            End Set
        End Property

        Public Shadows ReadOnly Property ToString()
            Get
                If _OriginalUri.IsFile Then
                    Return _OriginalUri.LocalPath
                Else
                    Return _OriginalUri.ToString
                End If

            End Get
        End Property

        Public Sub New(ByVal Source As Uri)
            Me.OriginalUri = Source

        End Sub

        Public Sub New()

        End Sub


    End Class

    Public Class ImageInformation
        Private _cameramanufacturer As String
        Private _cameramodel As String
        Private _author As String
        Private _title As String
        Private _DateTaken As String
        Private _KeyWords As String

        Public Property CameraManufacturer() As String
            Get
                Return _cameramanufacturer
            End Get
            Set(ByVal value As String)
                _cameramanufacturer = value
            End Set
        End Property

        Public Property CameraModel() As String
            Get
                Return _cameramodel
            End Get
            Set(ByVal value As String)
                _cameramodel = value
            End Set
        End Property

        Public Property Author() As String
            Get
                Return _author
            End Get
            Set(ByVal value As String)
                _author = value
            End Set
        End Property

        Public Property Title() As String
            Get
                Return _title
            End Get
            Set(ByVal value As String)
                _title = value
            End Set
        End Property

        Public Property DateTaken() As String
            Get
                Return _DateTaken
            End Get
            Set(ByVal value As String)
                _DateTaken = value
            End Set
        End Property

        Public Property Keywords() As String
            Get
                Return _KeyWords
            End Get
            Set(ByVal value As String)
                _KeyWords = value
            End Set
        End Property

    End Class
End Namespace
